#!/usr/bin/python
# encoding: utf-8

import urllib
from BeautifulSoup import BeautifulSoup

# http://www.bovespa.com.br/Empresas/InformacoesEmpresas/
# http://www.bovespa.com.br/Empresas/InformacoesEmpresas/ExecutaAcaoConsultaEmpresas.asp?CarIni=E|%C9
# http://www.bovespa.com.br/Empresas/InformacoesEmpresas/ExecutaAcaoConsultaEventosCorp.asp?codCVM=4170

def do_date(dt):
    day, month, year = dt.split('/')
    return '%s-%s-%s' % (year, month, day)


data = {}
data['codCVM'] = '18112'
url_values = urllib.urlencode(data)
# url = 'http://www.bovespa.com.br/Empresas/InformacoesEmpresas/ExecutaAcaoConsultaEmpresas.asp'
url = 'http://www.bovespa.com.br/Empresas/InformacoesEmpresas/ExecutaAcaoConsultaEventosCorp.asp'
full_url = url + '?' + url_values

l = urllib.urlopen(full_url)

# l = open('eventos.html')

soup = BeautifulSoup(l.read())
print '>>>', soup('td')[1].string
td_iter = iter([td for td in soup('td')])
for td in td_iter:
    if td.string:
        s = unicode(td.string).encode('utf-8').strip()
        if s in ('Desdobramento', 'Bonificação', 'Grupamento'):
            event = s
            td_iter.next()
            td = td_iter.next()
            dt_com = unicode(td.string).encode('utf-8').strip()
            dt_com = do_date(dt_com)
            td = td_iter.next()
            factor = unicode(td.string).encode('utf-8').strip()
            print event, dt_com, factor
        elif s in ('Dividendo', 'Juros'):
            event = s
            td_iter.next()
            td = td_iter.next()
            dt_com = unicode(td.string).encode('utf-8').strip()
            dt_com = do_date(dt_com)
            td = td_iter.next()
            vr_ord = unicode(td.string).encode('utf-8').strip().replace(',', '.')
            td = td_iter.next()
            vr_pref = unicode(td.string).encode('utf-8').strip().replace(',', '.')
            print event, dt_com, vr_ord, vr_pref



